Standard Data Collectors
A number of standard data collectors have been written to facilitate importing data that has been collected in common formats into Amulet.
Currently there are four data collectors to import data in .csv format.
The first pair of data collectors are intended to quickly get data into an Amulet database that has had the minimum of preparation. The points in the .csv file need not exist in the Amulet database before import as they will be created if missing.
The second pair of data collectors need the Amulet points that are to be imported from the .csv file, to already exist and be configured in the Amulet database.
GenericCSVFileImporter_1
The column headers must all be unique, and each row must have the same number of columns.
The column headers will be used as point names in Amulet unless specified differently by user setting CSV_POINTNAME_AMULETNAME_TRIPLETS.
The column ContainerPropertyValue, and the setting CONTAINER_PROPERTYVALUE_COLUMN are optional - they are only required if the data is destined for points in more than one container. If there is no value for setting CONTAINER_PROPERTYVALUE_COLUMN it is assumed that all points are destined to be put into the container with a property of the value in CONTAINER_PROPERTY_NAME.
Example of a .csv file:
ContainerPropertyValue,TimeStamp, A,B,C M22222222201,01/12/2014 00:15,1.23, 2.45, YES M22222222201,01/12/2014 00:30,2.23, 3.45, YES M22222222201,01/12/2014 00:45,3.23, 4.45, YES M22222222201,01/12/2014 01:00,4.23, 5.45, OFF M22222222201,01/12/2014 01:15,5.23, 6.45, ON M33301,01/12/2014 10:48,9.23, 4.45, YES M33301,01/12/2014 21:00,8.23, 5.45, YES M33301,01/12/2014 11:15,7.23, 6.45, YES
To import the data above into two containers, Amulet should have:
- one container with property = METER_SERIAL, value = M22222222201
- one container with property = METER_SERIAL, value = M33301
and these bare minimum importer Settings:
DATECOLUMN TimeStamp DATEFORMAT dd/MM/yyyy HH:mm CONTAINER_PROPERTY_NAME METER_SERIAL CONTAINER_PROPERTYVALUE_COLUMN ContainerPropertyValue CSV_STRVALUE_AMULETVALUE_PAIRS YES,1, OFF, 2, ON, 3 Additional optional settings IGNORE_CSV_POINTNAMES If there are columns in the .csv file to ignore eg C TIMEOFFSET_SECS to add or subtract seconds from readings before storage eg -1 CSV_POINTNAME_AMULET_NAME_TRIPLETS to store column names in the .csv file to points with a different name and units in Amulet eg A,PointA, Miles, B, PointB, Km CSV_POINTNAME_MULTIPLICATION_FACTOR_PAIRS to multiply a value for a point in the .csv file before storage to Amulet eg A, 0.001, B, 1000 DEFAULTUNITS The units assigned to a point, if a point is created by the import. eg Km DELETE_POINTS If true, will delete all points/data that has been created by a file import
GenericCSVFileImporter_2
The point names in the .CSV file will be used as Amulet point names unless specified differently by user setting CSV_POINTNAME_AMULET_NAME_TRIPLETS.
There must be user settings for FORMAT2_POINTNAME_COLUMN, FORMAT2_POINTVALUE_COLUMN, DATECOLUMN, DATEFORMAT. The rest are optional.
The column ContainerPropertyValue, and the setting CONTAINER_PROPERTYVALUE_COLUMN are optional - they are only required if the data is destined for points in more than one container.
If there is no value for setting CONTAINER_PROPERTYVALUE_COLUMN it is assumed that all points are destined to be put into the container with a property of the value in CONTAINER_PROPERTY_NAME.
Example of a .csv file"
ContainerPropertyValue, Point, TimeStamp, Value M22222222201,Fred, 01/12/2014 00:15,4 M22222222201,Fred, 01/12/2014 00:16,5 M22222222201,Fred, 01/12/2014 00:17,7 M22222222201,Freddy, 01/12/2014 00:18,6 M33301,Freddy2, 01/12/2014 00:17,YES M33301,George, 01/12/2014 00:17,YES
To import the data above, Amulet should have
- one container with property = METER_SERIAL, value = M22222222201
- one container with property = METER_SERIAL, value = M33301
and these importer Settings:
FORMAT2_POINTNAME_COLUMN Point FORMAT2_POINTVALUE_COLUMN Value DATECOLUMN TimeStamp DATEFORMAT dd/MM/yyyy HH:mm CSV_STRVALUE_AMULETVALUE_PAIRS YES,1, NO, 0 CONTAINER_PROPERTY_NAME METER_SERIAL CONTAINER_PROPERTYVALUE_COLUMN ContainerPropertyValue Additional optional settings ... see description for GenerivCSVFileImporter_1 CSV_POINTNAME_AMULET_NAME_TRIPLETS CSV_POINTNAME_MULTIPLICATION_FACTOR_PAIRS DEFAULTUNITS TIMEOFFSET_SECS IGNORE_CSV_POINTNAMES DELETE_POINTS
GenericCSVFileImporter_3
There must be user settings for DATECOLUMN, DATEFORMAT, POINT_PROPERTY_NAME. The rest are optional.
Example of a .csv file:
TimeStamp, A,B, C 01/12/2014 00:15,1.23, 2.45, YES 01/12/2014 00:30,2.23, 3.45, YES 01/12/2014 00:45,3.23, 4.45, YES 01/12/2014 01:00,4.23, 5.45, OFF 01/12/2014 01:15,5.23, 6.45, ON 01/12/2014 10:48,9.23, 4.45, YES 01/12/2014 21:00,8.23, 5.45, YES 01/12/2014 11:15,7.23, 6.45, YES
To import the data above, Amulet should have
- one point with property = METER_SERIAL, value = A
- one point with property = METER_SERIAL, value = B
- one point with property = METER_SERIAL, value = C
and these importer Settings:
DATECOLUMN TimeStamp DATEFORMAT dd/MM/yyyy HH:mm POINT_PROPERTY_NAME METER_SERIAL CSV_STRVALUE_AMULETVALUE_PAIRS YES,1, NO, 0 Additional optional settings ... see description for GenericCSVFileImporter_1 IGNORE_CSV_POINTNAMES TIMEOFFSET_SECS CSV_POINTNAME_MULTIPLICATION_FACTOR_PAIRS
GenericCSVFileImporter_4
There must be user settings for FORMAT4_POINTNAME_COLUMN, FORMAT4_POINTVALUE_COLUMN, DATECOLUMN, DATEFORMAT, POINT_PROPERTY_NAME. The rest are optional.
Example of a .csv file:
Point, TimeStamp, Value Fred, 01/12/2014 00:15,4 Fred, 01/12/2014 00:16,5 Fred, 01/12/2014 00:12,7 Freddy, 01/12/2014 00:18,6 Freddy2, 01/12/2014 00:17,YES George, 01/12/2014 00:17,YES
To import the data above, Amulet should have
- one point with property = METER_SERIAL, value = Fred
- one point with property = METER_SERIAL, value = Freddy
- one point with property = METER_SERIAL, value = Freddy2
- one point with property = METER_SERIAL, value = George
and these importer Settings:
FORMAT4_POINTNAME_COLUMN Point FORMAT4_POINTVALUE_COLUMN Value DATECOLUMN TimeStamp DATEFORMAT dd/MM/yyyy HH:mm POINT_PROPERTY_NAME METER_SERIAL CSV_STRVALUE_AMULETVALUE_PAIRS YES,1, NO, 0 Additional optional settings... see description for GenericCSVFileImporter_1 CSV_POINTNAME_MULTIPLICATION_FACTOR_PAIRS TIMEOFFSET_SECS IGNORE_CSV_POINTNAMES
Report e-mailer
Report e-mailer
This collector is responsible for checking and sending email reports.
Specific DC Settings:
- Website URL Base – This is the website URL this is to execute against (The website the collector is on)
- Website Source Parameter – This is the source (repository) to execute the website under (defines the database to connect to)
- PDF Generator Location – The location on disk of the pdf generator.
- Temp Directory – The location on disk (server) to hold generated pdf’s
- Temp Directory Age (Hours) – How often the temp directory will be cleaned of old files
- File Name Base – When sending emails, the pdf attachment of the email will be named as a random long string. If client wishes a more relevant name for attachment then use this field and the name of the pdf attachment will be this [file name base]_name_of_saved_report_[date timestamp of generation].pdf
Example of settings:
In this example the report emailer will execute reports on website http://localhost:8084/ against its repository (database) default and use the pdf generator at D:/abcPDF/OADashboardToPdf.exe to create pdf of reports/dashboards to store in D:/pdfs/ before attaching to the email it will send to report recipients. It will remove pdf files from this temporary area that are older than 48 hours.
Definitions of reports and configuration of schedule and mail recipients are defined in the Reports section of the help files.